Split ins:Claim into claim:Claim (demand) and claim:Loss (occurrence)
High3 SPclaim-coreDefect. ins:Claim ⊑ gist:Event makes the demand be the occurrence. ACORD (Claim vs ClaimsOccurrence), the OMG P&C model, and the project's own claim CQ vocabulary (claim:Claim + claim:Loss + claim:hasLoss) all separate them. Today "where did it happen" and "what caused it" are properties of the paperwork.
Fix. Introduce claim:Loss ⊑ core:Event; re-parent claim:Claim under core:Case (administrative case, aligned skos:closeMatch to ACORD Claim); add claim:hasLoss (Claim → Loss) with inverse claim:lossOfClaim declared via owl:inverseOf; annotate both classes with skos:definition and standard crosswalks.
Acceptance criteria
- AC: claim:Loss exists as core:Event subclass with skos:definition, rdfs:isDefinedBy, and skos:closeMatch to ACORD ClaimsOccurrence recorded as an annotation.
- AC: claim:Claim is no longer a subclass of any Event class; its definition reads as a demand for indemnification under a policy.
- AC: claim:hasLoss declared with domain Claim / range Loss and a single owl:inverseOf axiom; no duplicate hand-written inverse remains.
- AC: SPARQL "two claims sharing one loss" returns both claims against a single Loss IRI in the sample dataset.
- AC: Reasoner (HermiT/ELK) run over the module reports consistency; Claim and Loss are declared disjoint.